<?php

namespace CNAM\ActimanBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use CNAM\ActimanBundle\Entity\Service;
use CNAM\ActimanBundle\Entity\Phase;

/**
 * Operation
 *
 * @ORM\Table()
 * @ORM\Entity
 */
class Operation
{
    /**
     * @var integer
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @var string
     *
     * @ORM\Column(name="nomOperation", type="string", length=255)
     */
    private $nomOperation;
    
    /**
     * @var string
     * 
     * @ORM\Column(name="description", type="text", nullable=true)
     */
    private $description;

    /**
     * @var integer
     *
     * @ORM\Column(name="delaiOperation", type="integer")
     */
    private $delaiOperation;

    /**
     * @var string
     *
     * @ORM\Column(name="dependanceOperation", type="string", length=255)
     */
    private $dependanceOperation;


    /**
     *
     * @ORM\ManyToOne(targetEntity="Phase")
     * @ORM\JoinColumn(nullable=false)
     */
    protected $Phase;
    
    /**
     * Get id
     *
     * @return integer 
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Set nomOperation
     *
     * @param string $nomOperation
     * @return Operation
     */
    public function setNomOperation($nomOperation)
    {
        $this->nomOperation = $nomOperation;

        return $this;
    }

    /**
     * Get nomOperation
     *
     * @return string 
     */
    public function getNomOperation()
    {
        return $this->nomOperation;
    }

    /**
     * Get description
     *
     * @return string 
     */
    public function getDescription() {
        return $this->description;
    }
    
    /**
     * Set description
     *
     * @param string $description
     */
    public function setDescription($description) {
        $this->description = $description;
    }
    
    /**
     * Set delaiOperation
     *
     * @param integer $delaiOperation
     * @return Operation
     */
    public function setDelaiOperation($delaiOperation)
    {
        $this->delaiOperation = $delaiOperation;

        return $this;
    }

    /**
     * Get delaiOperation
     *
     * @return integer 
     */
    public function getDelaiOperation()
    {
        return $this->delaiOperation;
    }

    /**
     * Set dependanceOperation
     *
     * @param string $dependanceOperation
     * @return Operation
     */
    public function setDependanceOperation($dependanceOperation)
    {
        $this->dependanceOperation = $dependanceOperation;

        return $this;
    }

    /**
     * Get dependanceOperation
     *
     * @return string 
     */
    public function getDependanceOperation()
    {
        return $this->dependanceOperation;
    }
    
    /**
     *
     * @ORM\ManyToOne(targetEntity="Service")
     * @ORM\JoinColumn(nullable=false)
     */
    protected $Service;
    
    /**
     *
     * @return Service
     */
    public function getService() {
        return $this->Service;
    }

    /**
     *
     * @param Service $Service
     */
    public function setService($Service) {
        $this->Service = $Service;
    }
 
    /**
     *
     * @return Phase
     */
    public function getPhase() {
        return $this->Phase;
    }

    /**
     *
     * @param Phase $Phase
     */
    public function setPhase($Phase) {
        $this->Phase = $Phase;
    }
}
